


#include "first.h"
#include "second.h"
#include "third.h"
#include "fourth.h"
#include "logger.h"

using namespace std;
using namespace tenacitas;





int main ( ) {

    // Using the default logger 
    //typedef log::cout_printer printer;
    //typedef log::logger<> logger;

    typedef log::logger<cout_printer> logger_test;

    logger_test::printer_ptr_t l_printer( new logger_test::printer_t( ) );
    logger_test::ptr_t l_logger( new logger_test( l_printer, logger_test::info_level ) );

    async::test_1::run( l_logger ); 

    log_info( l_logger )
        << 
        "\n\n######################################################################"
        << "\n";
    

    /*  async::test_2::run<logger>( );

        log_debug( logger )
        << "\n\n$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$"
        << std::endl;

        async::test_3::run<logger>( );

        log_debug( logger )
        << "\n\n%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%"
        << std::endl;

        async::test_4::run<logger>( );*/

    std::cout << "done" << std::endl;
    char l_c;
    std::cin >> l_c;
}
